Currently, computer programs (also referred to as executable code) are configured to be executed in a specific operating system and an executable code for a specific operating system can be executed in any machine running that specific operating system.
Therefore, any piece of executable code, malicious or not, for specific operating system will be executed in any computer running that operating system. It is done this way to enable a single program (i.e., executable code), to be written once and executed in any machine running the same operating system. This is the currently in use mechanism which lays in the core of currently in-use computer technology (e.g., the combination of hardware/software), which we use in our everyday lives.
The vast majority of living humans in every nation of the world uses a computer of some sort, every single day—be it in the form of a server computer, a laptop computer, a desktop computer, a cellphone, a pad computer or any device which make the use of computer technology: hardware and software.
In the developed world, most humans are so dependent on computers, helping us with all kind of tasks in our daily lives that most cannot function properly without a computer's help. Many are not now able to travel from one city's location to another without the use of electronic maps in our mobile devices.
Most of the computer programs (also termed software applications or just applications) used are for our wellbeing, and we all are glad for their existences. But there are other kinds of adverse applications that are programmed for the single purpose, to create havoc and disruption in our daily lives. And they are called computer viruses, computer worms, adware, fishing software, ransomware, etc. (each such adverse application may be referred to herein as hacker code, a computer virus, or a virus).
In cryptography, encryption is the process of encoding a message or information in such a way that only authorized parties can access it. Encryption does not in itself prevent interference, but denies the intelligible content to a would-be interceptor. In an encryption scheme, the intended information or message, referred to as plaintext, is encrypted using an encryption algorithm, generating cipher-text that can only be read, if decrypted.
For technical reasons, an encryption scheme usually uses a pseudo-random encryption key generated by an algorithm. It is in principle possible to decrypt the message without possessing the key, but, for a well-designed encryption scheme, considerable computational resources and skills are required, which sometimes, can take a great length of time in the number of many years of computational prowess using very expensive and powerful computers, which in many cases, is not feasible or economically possible. But on the other hand, an authorized message recipient possessing the decryption key can easily decrypt the message using the key supplied by the originator/message's sender to the message recipient.
Basically, encryption is a form for hiding a message as not to make its actual/original content available to an intermediary which is not supposed to know the actual message/content. For instance, if the message would have been: “9”, and the pre-agreed upon method was to multiply the value of “7” to the message before it was sent, then once “7” is multiplied to “9” the result will be “63”. Anyone reading this message will not know that the actual value is “9”, but once the intend recipient receives the value “63” all that will be needed will be to divide the received value “7” by “63”, and the result will be “9”—the original value.
This example, while simplistic, gives an idea how encryption works. In an actual computer encryption, a sophisticated method would be preferable. Some such methods may use the computer's logical functions or a sophisticated mathematical algorithm. It should be recognized that any kind of available encryption mechanism in use today or to be invented in the future can be used to achieve the purpose of encrypting a non-encoded software code and to decrypt an encrypted one. But for the sake of full disclosure, a more complex format used by the computer will be explained herein.
Software installation and the behavior of the operating system (120) is altered using the disclosed methods and will be different from the operating systems of the prior art currently known or in use. With the prior art operating systems, the operating system gets an un-encrypted software code and installs it on the computer by creating all the required procedures for its later execution, then saving it unencrypted on the computer's non-transitory storage.
Software execution of the prior art involves acting on user input to request that the computer, upon which the unencrypted software is installed, engage the operating system to read software executable code and cause the central processing unit to execute it, thus, initiating the software's operation.
Computer infection of the prior art software is possible since, any program once installed in the computer is in a single format. A virus can, therefore, be installed and executed the same as any other program and is usually introduced into the computer without the user's awareness, or the operating system sensing or reporting anything abnormal.
In virus execution under the prior art, the central processing unit does not distinguish what kind of software code being executed, it may be a good code (e.g., an accounting software) or a bad code (e.g., a virus), and therefore, a virus can be executed without the user's awareness, or the operating system sensing or reporting anything abnormal.